﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Practices.EnterpriseLibrary.Common.Configuration;
using System.Configuration;

namespace NMoq.Core.UnitTest
{
    public class MockContainerData : NamedConfigurationElement
    {
        private const string MethodStrategiesProperty="methodStrategies";
        private const string TypeStrategiesProperty = "classStrategies";

        [ConfigurationProperty(MethodStrategiesProperty,IsRequired =false )]
        public NamedElementCollection<MethodStrategyPairData> MethodStrategyPairs
        {
            get
            {
                return (NamedElementCollection<MethodStrategyPairData>)this[MethodStrategiesProperty];
            }
            set
            {
                this[MethodStrategiesProperty] = value;
            }
        }

        [ConfigurationProperty(TypeStrategiesProperty, IsRequired = false)]
        public NamedElementCollection<ClassStrategyPairData> TypeStrategyPairs
        {
            get
            {
                return (NamedElementCollection<ClassStrategyPairData>)this[TypeStrategiesProperty];
            }
            set
            {
                this[TypeStrategiesProperty] = value;
            }
        }
    }
}
